package com.biz.primus.base.constant;

/**
 * 保存当前app在oms系统中的特定常量,例如节点,平台等
 * Created by zhangcheng on 2016/12/20.
 */
public interface OmsAppConstant {



    interface OrderType {
        String NORMAL = "normal";
        String SALE = "sale";
        String AFTER_SALE = "aftersale";
    }

    interface TicketType {
        String NORMAL = "普通发票";
        String VAT = "增值税发票";
    }

    interface ProductType {
        String COMMODITY = "商品";
        String GIFT = "赠品";
    }


    enum PayType {
        CASH("01", "现金"),
        OFFLINE_UNION_CARD("02", "离线银行卡-通联"),
        PLATFORM_COLLECTION("03", "平台代收"),
        POS_UNION_CARD("04", "通联POS银行卡"),
        OFFLINE_WECHAT("05", "线下微信支付"),
        OFFLINE_ALIPAY("06", "线下微信支付"),
        DELIVERY_COLLECTION("07", "物流代收"),
        MEMBER_PRE_PAY("08", "预收会员"),
        ONLINE_ALIPAY("09", "线上接口-支付宝"),
        OFFLINE_STORED_VALUE_UNION_CARD("10", "离线储值卡-通联"),
        BANK_TRANSFER("11", "银行转账收款"),
        MEMBER_PAY("12", "会员应收"),
        OFFLINE_HEXINPASS_PAY("13", "和信通离线"),
        ONLINE_STORED_VALUE_CARD("14", "线上接口-储值卡"),  //嘴上功夫支付
        POS_UNION_STORED_VALUE_CARD("15", "通联POS储值卡"),
        E_WALLET("16", "电子钱包"),
        E_BANK_REFUND("17", "线上网银退款"),
        ONLINE_WECHAT("18", "线上微信支付"),
        XIMU("19", "徙木金融支付");


        private String No;

        private String Name;

        PayType(String no, String name) {
            this.No = no;
            this.Name = name;
        }

        public String getNo() {
            return No;
        }

        public void setNo(String no) {
            No = no;
        }

        public String getName() {
            return Name;
        }

        public void setName(String name) {
            Name = name;
        }
    }


    interface PayStatus {
        /**
         * 未支付
         */
        int UNPAY = 0;

        /**
         * 已支付
         */
        int PAYED = 1;

        /**
         * 处理中
         */
        int PAYING = 2;

        /**
         * 部分付款
         */
        int PAID_PART = 3;

        /**
         * 部分退款
         */
        int REFUND_PART = 4;

        /**
         * 全额退款
         */
        int REFUND_ALL = 5;

        /**
         * 退款申请中
         */
        int APPLY_REFUND = 6;

        /**
         * 退款中
         */
        int ON_REFUND = 7;

        /**
         * 支付中
         */
        int ON_PAY = 8;
    }

    interface ShippingStatus {

        /**
         * 非货到付款(默认)
         */
        int DEFAULT = 0;

        /**
         * 货到付款
         */
        int PAY_ON_DELIVERY = 1;
    }

    interface ShippingType {
        String SHIPPING_BY_DEPOT = "门店自配送";
        String TAKE_FROM_DEPORT = "门店自提";
        String SHIPPING_BY_THIRD = "第三方配送";
    }

    interface OrderStatus {
        /**
         * 活动订单
         */
        String ACTIVE = "active";

        /**
         * 已作废订单
         */
        String DEAD = "dead";

        /**
         * 已完成订单
         */
        String FINISH = "finish";

        /**
         *  已出库
         */
        String OUT_BOUND = "outbound";

        /**
         * 已分单
         */
        String SINGLE = "single";
    }

    interface ShippingOrder {
        /**
         * 立即送
         */
        int SHIPPING_AT_ONCE = 1;

        /**
         * 普通送
         */
        int SHIPPING_NORMAL = 2;

        /**
         * 自提
         */
        int TAKE_NO_SHIPPING = 3;
    }

    /**
     * 配送标准
     */
    enum ShippingStandard {
        /**
         * 立即送（有门店编号）
         */
        ON("on", true),
        /**
         * 普通送
         */
        OFF("off", false);

        private String symbol;

        private boolean isRightNow;

        ShippingStandard(String symbol, boolean isRightNow) {
            this.symbol = symbol;
            this.isRightNow = isRightNow;
        }

        public String getSymbol() {
            return symbol;
        }

        public boolean isRightNow() {
            return isRightNow;
        }
    }

    /**
     * 收款方式
     */
    enum AccountType {
        /**
         * 银行
         */
        Bank,

        /**
         * 微信
         */
        Wechat,

        /**
         * 支付宝
         */
        Alipay,

        /**
         * 嘴上功夫支付
         */
        ZsgfPay,

        /**
         * 徙木支付
         */
        XimuPay
    }


    /**
     * 物流状态
     */
    interface LogicStatus {
        /**
         * 待打印
         */
        int WAIT_FOR_PRINT = 1;
        /**
         * 待拣货
         */
        int WAIT_FOR_PACKAGE = 2;
        /**
         * 已出库
         */
        int OUT_BOUND = 3;
        /**
         * 已揽收
         */
        int TAKEN_EXPRESS = 4;
        /**
         * 全部签收
         */
        int SIGNED = 5;
        /**
         * 部分签收
         */
        int PART_SIGNED = 6;
        /**
         * 拒绝签收
         */
        int REJECT_SIGNED = 7;
        /**
         * 延期签收
         */
        int DELAY_SIGNED = 8;
        /**
         * 已取消
         */
        int CANCEL = 9;
    }

    /*
    * 渠道代码
    */
    String CHANNEL_CODE = "1919kuaihe";

    /**
     * 门店删除表示
     */
    String DELETE_FLAG = "X";
}
